N-Port ID Virtualization (NPIV) is an American National Standards Institute (ANSI) T11 standard that describes how a Fibre Channel (FC) network port (N-port) can register with the FC fabric using several worldwide port names (WWPNs). This allows a fabric-attached N-port to claim multiple fabric addresses, which may be considered as virtual WWPNs. Each address appears as a unique entity on the FC fabric. The N-port is considered to be an end node in the FC fabric, wherein the port can be a host bus adapter (HBA) port or a target port on a storage array.
When NPIV is supported on the initiator side (i.e., on the HBA side), then each virtual machine (VM) can have its own virtual WWPN and N-port identifier (N_PORT_ID). Recently, NPIV on the host side has been considered as implicit HBA virtualization, as VMs are not provided with the virtual HBAs. If the physical switch also supports NPIV, then each VM has the ability to view the physical storage fabric.
On the switch side, there are physical switches supporting N-Port Virtualization (NPV), which can reduce the amounts of domain identifiers (IDs) but retain the scalability of fabric switches. However, no software (virtual) storage switches are provided. On the target side of the data storage system, virtualization techniques are not developed, and thus NPIV is not typically utilized. Traditional zoning (including both hardware and software) and logical unit (LUN) masking techniques cannot fully satisfy the requirements of multi-tenancy in a cloud computing scenario since the tenants still have the ability to probe the physical storage infrastructures.